(* Content-type: application/vnd.wolfram.mathematica *)

(*** Wolfram Notebook File ***)
(* http://www.wolfram.com/nb *)

(* CreatedBy='Mathematica 11.3' *)

(*CacheID: 234*)
(* Internal cache information:
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[       158,          7]
NotebookDataLength[     26889,        591]
NotebookOptionsPosition[     24571,        545]
NotebookOutlinePosition[     24915,        560]
CellTagsIndexPosition[     24872,        557]
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Notebook[{

Cell[CellGroupData[{
Cell["Matrix Addition", "Title",
 CellChangeTimes->{{3.73910608245113*^9, 3.739106084891464*^9}, {
  3.739107719654417*^9, 3.7391077233423896`*^9}, {3.7392704180480294`*^9, 
  3.7392704210313153`*^9}, {3.739539527777087*^9, 3.739539535000416*^9}, {
  3.739545959761545*^9, 3.739545966456993*^9}, {3.739546916851977*^9, 
  3.7395469219310856`*^9}, {3.739547806422703*^9, 
  3.7395478084936976`*^9}},ExpressionUUID->"1297967f-cb5a-4edf-9d0c-\
e27dd8a50146"],

Cell["Find the library:", "Text",
 CellChangeTimes->{{3.7391061370592537`*^9, 
  3.739106148506667*^9}},ExpressionUUID->"c510ce96-e2d9-423d-b2ed-\
552735483f57"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"library", "=", 
  RowBox[{"FileNameJoin", "[", 
   RowBox[{"{", 
    RowBox[{
     RowBox[{"NotebookDirectory", "[", "]"}], ",", "\"\<build\>\"", ",", 
     "\"\<Debug\>\"", ",", "\"\<MatrixAddition.dll\>\""}], "}"}], 
   "]"}]}]], "Input",
 CellChangeTimes->{{3.739105894797891*^9, 3.739105935253393*^9}, {
   3.7391059796056757`*^9, 3.739105997196041*^9}, {3.7391077273200736`*^9, 
   3.739107729104781*^9}, {3.739108134248423*^9, 3.739108134687853*^9}, {
   3.7392704315527277`*^9, 3.7392704329680805`*^9}, {3.7395395400412693`*^9, 
   3.739539541305436*^9}, {3.7395459700104127`*^9, 3.7395459745858183`*^9}, 
   3.7395469252812886`*^9, {3.7395478120871572`*^9, 3.7395478149108763`*^9}},
 CellLabel->"In[1]:=",ExpressionUUID->"8aa2e240-abfa-44b5-894b-46319c343446"],

Cell[BoxData["\<\"D:\\\\github\\\\wolfram-librarylink-examples\\\\01-\
BasicExamples\\\\04-Tensors\\\\Integer\\\\MatrixAddition\\\\build\\\\Debug\\\\\
MatrixAddition.dll\"\>"], "Output",
 CellChangeTimes->{
  3.7391058973058558`*^9, 3.7391059359695897`*^9, {3.7391059803083477`*^9, 
   3.739106001304367*^9}, 3.73910606979216*^9, 3.739107892266984*^9, 
   3.7391079875875406`*^9, 3.7391080771686153`*^9, {3.739108119506982*^9, 
   3.7391081585776176`*^9}, 3.739116923705617*^9, 3.7391171513657255`*^9, 
   3.739117374032791*^9, 3.7391178750563493`*^9, 3.7391243599416747`*^9, 
   3.739197612978427*^9, 3.7392705337891965`*^9, 3.73953954228438*^9, 
   3.739545975532941*^9, 3.7395466794648523`*^9, 3.7395467577834578`*^9, 
   3.739547056610352*^9, 3.7395478389140215`*^9},
 CellLabel->"Out[1]=",ExpressionUUID->"867e821c-9752-4ad3-a76c-4099feaaf7e7"]
}, Open  ]],

Cell["Load the library:", "Text",
 CellChangeTimes->{{3.7391061443316727`*^9, 
  3.7391061463706226`*^9}},ExpressionUUID->"efac2de3-09b8-4860-b07a-\
129a8fab3591"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"MatrixAddition", "=", 
  RowBox[{"LibraryFunctionLoad", "[", 
   RowBox[{"library", ",", "\"\<MatrixAddition\>\"", ",", 
    RowBox[{"{", 
     RowBox[{
      RowBox[{"{", 
       RowBox[{"Integer", ",", "2"}], "}"}], ",", 
      RowBox[{"{", 
       RowBox[{"Integer", ",", "2"}], "}"}]}], "}"}], ",", 
    RowBox[{"{", 
     RowBox[{"Integer", ",", "2"}], "}"}]}], "]"}]}]], "Input",
 CellChangeTimes->{{3.739105848717472*^9, 3.739105890216504*^9}, {
  3.7391059455571985`*^9, 3.7391059680762825`*^9}, {3.739107744320021*^9, 
  3.739107750657236*^9}, {3.739107950320916*^9, 3.739107953759204*^9}, {
  3.73927043798588*^9, 3.739270439760577*^9}, {3.7392705406899757`*^9, 
  3.739270545574827*^9}, {3.739539544641649*^9, 3.739539556312462*^9}, {
  3.739545980562784*^9, 3.739545992874222*^9}, {3.739547063765197*^9, 
  3.739547065188557*^9}, {3.7395478409840155`*^9, 3.739547853287861*^9}},
 CellLabel->"In[2]:=",ExpressionUUID->"62a67b0b-d18f-44ae-9b33-57e569a713df"],

Cell[BoxData[
 InterpretationBox[
  RowBox[{
   TagBox["LibraryFunction",
    "SummaryHead"], "[", 
   DynamicModuleBox[{Typeset`open$$ = False, Typeset`embedState$$ = "Ready"}, 
    TemplateBox[{PaneSelectorBox[{False -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource[
               "FEBitmaps", "SquarePlusIconMedium"]], 
              ButtonFunction :> (Typeset`open$$ = True), Appearance -> None, 
              Evaluator -> Automatic, Method -> "Preemptive"], 
             Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 3.5 CurrentValue["FontCapHeight"]/
                AbsoluteCurrentValue[Magnification]}]], 
            GraphicsBox[{
              Thickness[0.038461538461538464`], {
               FaceForm[{
                 GrayLevel[0.93], 
                 Opacity[1.]}], 
               
               FilledCurveBox[{{{1, 4, 3}, {0, 1, 0}, {1, 3, 3}, {0, 1, 0}, {
                1, 3, 3}, {0, 1, 0}, {1, 3, 3}, {0, 1, 0}}}, {{{
                25.499999999999996`, 2.5}, {25.499999999999996`, 
                1.3953100000000003`}, {24.604699999999998`, 
                0.49999999999999994`}, {23.5, 0.49999999999999994`}, {2.5, 
                0.49999999999999994`}, {1.3953100000000003`, 
                0.49999999999999994`}, {0.49999999999999994`, 
                1.3953100000000003`}, {0.49999999999999994`, 2.5}, {
                0.49999999999999994`, 23.5}, {0.49999999999999994`, 
                24.604699999999998`}, {1.3953100000000003`, 
                25.499999999999996`}, {2.5, 25.499999999999996`}, {23.5, 
                25.499999999999996`}, {24.604699999999998`, 
                25.499999999999996`}, {25.499999999999996`, 
                24.604699999999998`}, {25.499999999999996`, 23.5}, {
                25.499999999999996`, 2.5}}}]}, {
               FaceForm[{
                 RGBColor[0.5, 0.5, 0.5], 
                 Opacity[1.]}], 
               
               FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {
                0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{20.5426, 
                19.116799999999998`}, {16.3832, 21.876199999999997`}, {
                16.3832, 20.021499999999996`}, {6.930469999999999, 
                20.021499999999996`}, {6.930469999999999, 
                18.212100000000003`}, {16.3832, 18.212100000000003`}, {
                16.3832, 16.357399999999995`}, {20.5426, 
                19.116799999999998`}}}], 
               
               FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {
                0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{5.30508, 13.8391}, {
                9.46445, 11.079700000000003`}, {9.46445, 
                12.933999999999997`}, {18.917199999999998`, 
                12.933999999999997`}, {18.917199999999998`, 14.7438}, {
                9.46445, 14.7438}, {9.46445, 16.598}, {5.30508, 13.8391}}}], 
               
               FilledCurveBox[{{{1, 4, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {
                0, 1, 0}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 
                3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}, {1, 3, 3}, {1,
                 3, 3}, {1, 3, 3}, {1, 3, 3}}}, CompressedData["
1:eJxTTMoPSmVmYGBgBGJjIGYCYq4u+eR3VWoOxhkv5j+Qk3SA8fu/r5rKOVHM
Yd2vmNyjZ9Qcrt9QXbW9S8RBg59767IidQcPMYPGaHFhB+Nn61SfiGo4xBwp
T7o2V9Dh0Iolfg6/NBxEHv/x1Xgi4FB1XNNqkqQWnP+axUTQjFkbzn+oO2HB
j/3aDg/Xn5T6WiDoYLs3aJpiqI7DrHN+bO6tQg4zfUR7vF7pQOyfIQyRd9d1
WLL0U1kLoyjEPdm6DpoTXfQX7xBzKPjQejLkhDacL5J4+LL2Gm2HtNnSl4Vf
iELM69J2qPZM3tLnJerQX1oozZugDfHPUxGI/4W1HQ5p3TthoyDi4D7lG1v8
Mi2HgqL9zoEHhB1inOxe3BRG8MH62zXhfIbN1Z82CGhC/GMg4nCm3mN/7TYN
iHlCUPdGakDc/1kUEr46GhD/eYnD+d9iBf/kC0vC+TuCrSL+X5Vy2HGR4R5T
uAbEfxYykPBYp+HQqsCuesZAFhL+rJoQ/2rIQdxTpwkJ7yVycPfD+GDzVqLx
xbUd5HYt2JfqBdWfpA2Jj9mykPDpgYaXtaxDy7yzq86vg8qvlIHE5ylY/Eo7
XAt7o787TxfOB5ufqesQ9PbyxxkPZSDhZ6nrMAGU3u7LQtLLEx2HN2253UbX
ofZ76jis/Pay4oynAsT8QG0HKZMv/gW7FCDyTFpwPsz/MD44/Mw1HFjb1uR9
TVVwWKy880/7FHWIexrkIfLX1RzOMDZZVjHIOaDkh3vSDuj5AwCF11Vc
                "]]}}, Background -> GrayLevel[0.93], Axes -> False, 
             AspectRatio -> 1, ImageSize -> {Automatic, 
               Dynamic[
               3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification]), ImageSizeCache -> {45., {0., 9.}}]}, Frame -> 
             True, FrameTicks -> None, FrameStyle -> Directive[
               Thickness[Tiny], 
               GrayLevel[0.7]]], 
            GridBox[{{
               RowBox[{
                 TagBox["\"Function name: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox["\"MatrixAddition\"", "SummaryItem"]}]}, {
               RowBox[{
                 TagBox["\"Argument count: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox["2", "SummaryItem"]}]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Rows" -> {{Top}}}, AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}], True -> GridBox[{{
            PaneBox[
             ButtonBox[
              DynamicBox[
               FEPrivate`FrontEndResource[
               "FEBitmaps", "SquareMinusIconMedium"]], 
              ButtonFunction :> (Typeset`open$$ = False), Appearance -> None, 
              Evaluator -> Automatic, Method -> "Preemptive"], 
             Alignment -> {Center, Center}, ImageSize -> 
             Dynamic[{
               Automatic, 3.5 CurrentValue["FontCapHeight"]/
                AbsoluteCurrentValue[Magnification]}]], 
            GraphicsBox[{
              Thickness[0.038461538461538464`], {
               FaceForm[{
                 GrayLevel[0.93], 
                 Opacity[1.]}], 
               
               FilledCurveBox[{{{1, 4, 3}, {0, 1, 0}, {1, 3, 3}, {0, 1, 0}, {
                1, 3, 3}, {0, 1, 0}, {1, 3, 3}, {0, 1, 0}}}, {{{
                25.499999999999996`, 2.5}, {25.499999999999996`, 
                1.3953100000000003`}, {24.604699999999998`, 
                0.49999999999999994`}, {23.5, 0.49999999999999994`}, {2.5, 
                0.49999999999999994`}, {1.3953100000000003`, 
                0.49999999999999994`}, {0.49999999999999994`, 
                1.3953100000000003`}, {0.49999999999999994`, 2.5}, {
                0.49999999999999994`, 23.5}, {0.49999999999999994`, 
                24.604699999999998`}, {1.3953100000000003`, 
                25.499999999999996`}, {2.5, 25.499999999999996`}, {23.5, 
                25.499999999999996`}, {24.604699999999998`, 
                25.499999999999996`}, {25.499999999999996`, 
                24.604699999999998`}, {25.499999999999996`, 23.5}, {
                25.499999999999996`, 2.5}}}]}, {
               FaceForm[{
                 RGBColor[0.5, 0.5, 0.5], 
                 Opacity[1.]}], 
               
               FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {
                0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{20.5426, 
                19.116799999999998`}, {16.3832, 21.876199999999997`}, {
                16.3832, 20.021499999999996`}, {6.930469999999999, 
                20.021499999999996`}, {6.930469999999999, 
                18.212100000000003`}, {16.3832, 18.212100000000003`}, {
                16.3832, 16.357399999999995`}, {20.5426, 
                19.116799999999998`}}}], 
               
               FilledCurveBox[{{{0, 2, 0}, {0, 1, 0}, {0, 1, 0}, {0, 1, 0}, {
                0, 1, 0}, {0, 1, 0}, {0, 1, 0}}}, {{{5.30508, 13.8391}, {
                9.46445, 11.079700000000003`}, {9.46445, 
                12.933999999999997`}, {18.917199999999998`, 
                12.933999999999997`}, {18.917199999999998`, 14.7438}, {
                9.46445, 14.7438}, {9.46445, 16.598}, {5.30508, 13.8391}}}], 
               
               FilledCurveBox[{{{1, 4, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {
                0, 1, 0}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 
                3}, {1, 3, 3}, {1, 3, 3}, {1, 3, 3}, {0, 1, 0}, {1, 3, 3}, {1,
                 3, 3}, {1, 3, 3}, {1, 3, 3}}}, CompressedData["
1:eJxTTMoPSmVmYGBgBGJjIGYCYq4u+eR3VWoOxhkv5j+Qk3SA8fu/r5rKOVHM
Yd2vmNyjZ9Qcrt9QXbW9S8RBg59767IidQcPMYPGaHFhB+Nn61SfiGo4xBwp
T7o2V9Dh0Iolfg6/NBxEHv/x1Xgi4FB1XNNqkqQWnP+axUTQjFkbzn+oO2HB
j/3aDg/Xn5T6WiDoYLs3aJpiqI7DrHN+bO6tQg4zfUR7vF7pQOyfIQyRd9d1
WLL0U1kLoyjEPdm6DpoTXfQX7xBzKPjQejLkhDacL5J4+LL2Gm2HtNnSl4Vf
iELM69J2qPZM3tLnJerQX1oozZugDfHPUxGI/4W1HQ5p3TthoyDi4D7lG1v8
Mi2HgqL9zoEHhB1inOxe3BRG8MH62zXhfIbN1Z82CGhC/GMg4nCm3mN/7TYN
iHlCUPdGakDc/1kUEr46GhD/eYnD+d9iBf/kC0vC+TuCrSL+X5Vy2HGR4R5T
uAbEfxYykPBYp+HQqsCuesZAFhL+rJoQ/2rIQdxTpwkJ7yVycPfD+GDzVqLx
xbUd5HYt2JfqBdWfpA2Jj9mykPDpgYaXtaxDy7yzq86vg8qvlIHE5ylY/Eo7
XAt7o787TxfOB5ufqesQ9PbyxxkPZSDhZ6nrMAGU3u7LQtLLEx2HN2253UbX
ofZ76jis/Pay4oynAsT8QG0HKZMv/gW7FCDyTFpwPsz/MD44/Mw1HFjb1uR9
TVVwWKy880/7FHWIexrkIfLX1RzOMDZZVjHIOaDkh3vSDuj5AwCF11Vc
                "]]}}, Background -> GrayLevel[0.93], Axes -> False, 
             AspectRatio -> 1, ImageSize -> {Automatic, 
               Dynamic[
               3.5 (CurrentValue["FontCapHeight"]/AbsoluteCurrentValue[
                 Magnification]), ImageSizeCache -> {45., {0., 9.}}]}, Frame -> 
             True, FrameTicks -> None, FrameStyle -> Directive[
               Thickness[Tiny], 
               GrayLevel[0.7]]], 
            GridBox[{{
               RowBox[{
                 TagBox["\"Function name: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox["\"MatrixAddition\"", "SummaryItem"]}]}, {
               RowBox[{
                 TagBox["\"Argument count: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox["2", "SummaryItem"]}]}, {
               RowBox[{
                 TagBox["\"Argument types: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox[
                  PaneBox[
                   RowBox[{"{", 
                    RowBox[{
                    RowBox[{"{", 
                    RowBox[{"Integer", ",", "2"}], "}"}], ",", 
                    RowBox[{"{", 
                    RowBox[{"Integer", ",", "2"}], "}"}]}], "}"}], 
                   ImageSize -> {{1, 500}, Automatic}, BaselinePosition -> 
                   Baseline, ContentPadding -> False, FrameMargins -> 0, 
                   StripOnInput -> True], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox["\"Return type: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox[
                  PaneBox[
                   RowBox[{"{", 
                    RowBox[{"Integer", ",", "2"}], "}"}], 
                   ImageSize -> {{1, 500}, Automatic}, BaselinePosition -> 
                   Baseline, ContentPadding -> False, FrameMargins -> 0, 
                   StripOnInput -> True], "SummaryItem"]}]}, {
               RowBox[{
                 TagBox["\"Library: \"", "SummaryItemAnnotation"], 
                 "\[InvisibleSpace]", 
                 TagBox["\"MatrixAddition.dll\"", "SummaryItem"]}]}}, 
             GridBoxAlignment -> {
              "Columns" -> {{Left}}, "Rows" -> {{Automatic}}}, AutoDelete -> 
             False, GridBoxItemSize -> {
              "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
             GridBoxSpacings -> {"Columns" -> {{2}}, "Rows" -> {{Automatic}}},
              BaseStyle -> {
              ShowStringCharacters -> False, NumberMarks -> False, 
               PrintPrecision -> 3, ShowSyntaxStyles -> False}]}}, 
          GridBoxAlignment -> {"Rows" -> {{Top}}}, AutoDelete -> False, 
          GridBoxItemSize -> {
           "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}}, 
          BaselinePosition -> {1, 1}]}, 
       Dynamic[Typeset`open$$], ImageSize -> Automatic]},
     "SummaryPanel"],
    DynamicModuleValues:>{}], "]"}],
  LibraryFunction[
  "D:\\github\\wolfram-librarylink-examples\\01-BasicExamples\\04-Tensors\\\
Integer\\MatrixAddition\\build\\Debug\\MatrixAddition.dll", 
   "MatrixAddition", {{Integer, 2}, {Integer, 2}}, {Integer, 2}],
  Editable->False,
  SelectWithContents->True,
  Selectable->False]], "Output",
 CellChangeTimes->{{3.739105969171603*^9, 3.7391060021967382`*^9}, 
   3.7391060711697397`*^9, 3.7391078947548018`*^9, 3.739107954660065*^9, 
   3.7391079894669657`*^9, 3.739108078519744*^9, {3.739108137157239*^9, 
   3.739108160319773*^9}, 3.739116926298662*^9, 3.7391171586717806`*^9, 
   3.7391173743032026`*^9, 3.7391178761574097`*^9, 3.7391243616510177`*^9, 
   3.7391976143529153`*^9, {3.739270535646973*^9, 3.7392705535886445`*^9}, 
   3.7395395569240494`*^9, 3.7395459939752817`*^9, 3.73954668062335*^9, 
   3.7395467588350515`*^9, 3.739547065607828*^9, 3.7395478544171977`*^9},
 CellLabel->"Out[2]=",ExpressionUUID->"20069e8b-6073-4c92-9729-eca0eb1240cb"]
}, Open  ]],

Cell["The function takes one integer and returns its square:", "Text",
 CellChangeTimes->{{3.7391061174030013`*^9, 3.739106152995204*^9}, {
  3.7391077584797153`*^9, 3.739107761551409*^9}, {3.7392731736041656`*^9, 
  3.7392731860038867`*^9}},ExpressionUUID->"c4e46aae-b9da-4740-b3d4-\
d971b591423b"],

Cell[BoxData[
 RowBox[{
  RowBox[{"a", "=", 
   RowBox[{"RandomInteger", "[", 
    RowBox[{"10", ",", 
     RowBox[{"{", 
      RowBox[{"5", ",", "3"}], "}"}]}], "]"}]}], ";"}]], "Input",
 CellChangeTimes->{{3.7395460406909633`*^9, 3.7395460416971335`*^9}, {
  3.7395478591031995`*^9, 3.739547862087073*^9}},
 CellLabel->"In[3]:=",ExpressionUUID->"2528b890-bb03-44f5-822f-0a6a2986cec8"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"a", "//", "MatrixForm"}]], "Input",
 CellChangeTimes->{{3.739546120739631*^9, 3.739546122881181*^9}},
 CellLabel->"In[4]:=",ExpressionUUID->"78100159-e9b1-4404-90f2-8fb12e01b90c"],

Cell[BoxData[
 TagBox[
  RowBox[{"(", "\[NoBreak]", GridBox[{
     {"4", "0", "3"},
     {"0", "9", "4"},
     {"0", "2", "3"},
     {"5", "6", "5"},
     {"10", "1", "3"}
    },
    GridBoxAlignment->{
     "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
      "RowsIndexed" -> {}},
    GridBoxSpacings->{"Columns" -> {
        Offset[0.27999999999999997`], {
         Offset[0.7]}, 
        Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
        Offset[0.2], {
         Offset[0.4]}, 
        Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
  Function[BoxForm`e$, 
   MatrixForm[BoxForm`e$]]]], "Output",
 CellChangeTimes->{3.739546123165936*^9, 3.739546682345235*^9, 
  3.7395467605967197`*^9, 3.7395470684541426`*^9, 3.7395478630161796`*^9},
 CellLabel->
  "Out[4]//MatrixForm=",ExpressionUUID->"3df5e1dd-3e4d-46db-bd36-\
ccd3d669d642"]
}, Open  ]],

Cell[BoxData[
 RowBox[{
  RowBox[{"b", "=", 
   RowBox[{"RandomInteger", "[", 
    RowBox[{"10", ",", 
     RowBox[{"{", 
      RowBox[{"5", ",", "3"}], "}"}]}], "]"}]}], ";"}]], "Input",
 CellChangeTimes->{{3.7395460427871833`*^9, 3.7395460474174194`*^9}, {
  3.739546137386957*^9, 3.739546146714939*^9}, {3.7395478677116966`*^9, 
  3.739547881736375*^9}},
 CellLabel->"In[7]:=",ExpressionUUID->"e07561d0-1e22-4048-92b2-a77d514ec0ea"],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{"b", "//", "MatrixForm"}]], "Input",
 CellChangeTimes->{{3.739546125364053*^9, 3.739546127153803*^9}},
 CellLabel->"In[8]:=",ExpressionUUID->"c7b9a039-f29d-4905-9c5f-fc9e8eaa09a8"],

Cell[BoxData[
 TagBox[
  RowBox[{"(", "\[NoBreak]", GridBox[{
     {"10", "0", "4"},
     {"3", "4", "1"},
     {"3", "5", "1"},
     {"1", "0", "4"},
     {"8", "2", "10"}
    },
    GridBoxAlignment->{
     "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
      "RowsIndexed" -> {}},
    GridBoxSpacings->{"Columns" -> {
        Offset[0.27999999999999997`], {
         Offset[0.7]}, 
        Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
        Offset[0.2], {
         Offset[0.4]}, 
        Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
  Function[BoxForm`e$, 
   MatrixForm[BoxForm`e$]]]], "Output",
 CellChangeTimes->{{3.7395461281045322`*^9, 3.739546148251418*^9}, 
   3.7395466846652536`*^9, 3.739546762651068*^9, 3.7395470700368834`*^9, {
   3.7395478789436874`*^9, 3.7395478828184175`*^9}},
 CellLabel->
  "Out[8]//MatrixForm=",ExpressionUUID->"4516116d-4e76-47d3-bdc0-\
08e3a1d93347"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"MatrixAddition", "[", 
   RowBox[{"a", ",", "b"}], "]"}], "//", "MatrixForm"}]], "Input",
 CellChangeTimes->{{3.7391060727245517`*^9, 3.739106076195772*^9}, {
   3.7391077531115847`*^9, 3.739107755206549*^9}, {3.739270441240625*^9, 
   3.739270443015323*^9}, {3.739539558313388*^9, 3.739539564258111*^9}, {
   3.739545996338558*^9, 3.739546050290187*^9}, 3.7395470730921745`*^9, 
   3.739547886288031*^9},
 CellLabel->"In[9]:=",ExpressionUUID->"2aee44e5-bd74-4776-b632-90871e9fb040"],

Cell[BoxData[
 TagBox[
  RowBox[{"(", "\[NoBreak]", GridBox[{
     {"14", "0", "7"},
     {"3", "13", "5"},
     {"3", "7", "4"},
     {"6", "6", "9"},
     {"18", "3", "13"}
    },
    GridBoxAlignment->{
     "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
      "RowsIndexed" -> {}},
    GridBoxSpacings->{"Columns" -> {
        Offset[0.27999999999999997`], {
         Offset[0.7]}, 
        Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
        Offset[0.2], {
         Offset[0.4]}, 
        Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
  Function[BoxForm`e$, 
   MatrixForm[BoxForm`e$]]]], "Output",
 CellChangeTimes->{
  3.7391081619814444`*^9, 3.739116927735167*^9, 3.7391171604665346`*^9, 
   3.739117381191558*^9, 3.739117878387338*^9, 3.739124363063369*^9, 
   3.739197615916663*^9, {3.7392705492745295`*^9, 3.739270555420081*^9}, 
   3.7395395648676977`*^9, {3.739546023826951*^9, 3.739546051771612*^9}, 
   3.7395461054328938`*^9, 3.739546151666128*^9, 3.7395466855110683`*^9, 
   3.7395467633718863`*^9, 3.739547073697753*^9, 3.7395478867684946`*^9},
 CellLabel->
  "Out[9]//MatrixForm=",ExpressionUUID->"be8c98b7-6a17-4ae9-a527-\
ba05d5929801"]
}, Open  ]],

Cell[CellGroupData[{

Cell[BoxData[
 RowBox[{
  RowBox[{"a", "+", "b"}], "//", "MatrixForm"}]], "Input",
 CellChangeTimes->{{3.7395460527635684`*^9, 3.739546058452005*^9}, {
  3.739546094634844*^9, 3.739546095946106*^9}, {3.739546155027363*^9, 
  3.739546155489808*^9}, {3.739547890495081*^9, 3.739547891246805*^9}},
 CellLabel->"In[10]:=",ExpressionUUID->"97d83d22-daf5-4312-adb5-f9a9f1ffe896"],

Cell[BoxData[
 TagBox[
  RowBox[{"(", "\[NoBreak]", GridBox[{
     {"14", "0", "7"},
     {"3", "13", "5"},
     {"3", "7", "4"},
     {"6", "6", "9"},
     {"18", "3", "13"}
    },
    GridBoxAlignment->{
     "Columns" -> {{Center}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}}, 
      "RowsIndexed" -> {}},
    GridBoxSpacings->{"Columns" -> {
        Offset[0.27999999999999997`], {
         Offset[0.7]}, 
        Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
        Offset[0.2], {
         Offset[0.4]}, 
        Offset[0.2]}, "RowsIndexed" -> {}}], "\[NoBreak]", ")"}],
  Function[BoxForm`e$, 
   MatrixForm[BoxForm`e$]]]], "Output",
 CellChangeTimes->{{3.739546053507245*^9, 3.739546058766309*^9}, 
   3.7395460961222754`*^9, 3.739546155757065*^9, 3.7395466883237395`*^9, 
   3.7395467644314795`*^9, 3.7395470760984917`*^9, 3.739547891822359*^9},
 CellLabel->
  "Out[10]//MatrixForm=",ExpressionUUID->"c5ba7215-9a6f-4aa4-a346-\
84d4df6556b8"]
}, Open  ]],

Cell["Unload the library:", "Text",
 CellChangeTimes->{{3.739124382953955*^9, 
  3.739124385889764*^9}},ExpressionUUID->"9cda0e66-61be-45ed-8c1b-\
259daf4f0b37"],

Cell[BoxData[
 RowBox[{"LibraryUnload", "[", "library", "]"}]], "Input",
 CellChangeTimes->{{3.7391243720599732`*^9, 3.7391243780989137`*^9}},
 CellLabel->"In[11]:=",ExpressionUUID->"fc74a0ea-5f7e-45a2-89cb-f9fbabe2f70f"]
}, Open  ]]
},
WindowSize->{1142, 833},
WindowMargins->{{Automatic, 294}, {37, Automatic}},
FrontEndVersion->"11.3 for Microsoft Windows (64-bit) (March 6, 2018)",
StyleDefinitions->"Default.nb"
]
(* End of Notebook Content *)

(* Internal cache information *)
(*CellTagsOutline
CellTagsIndex->{}
*)
(*CellTagsIndex
CellTagsIndex->{}
*)
(*NotebookFileOutline
Notebook[{
Cell[CellGroupData[{
Cell[580, 22, 455, 7, 96, "Title",ExpressionUUID->"1297967f-cb5a-4edf-9d0c-e27dd8a50146"],
Cell[1038, 31, 161, 3, 34, "Text",ExpressionUUID->"c510ce96-e2d9-423d-b2ed-552735483f57"],
Cell[CellGroupData[{
Cell[1224, 38, 792, 14, 28, "Input",ExpressionUUID->"8aa2e240-abfa-44b5-894b-46319c343446"],
Cell[2019, 54, 849, 12, 32, "Output",ExpressionUUID->"867e821c-9752-4ad3-a76c-4099feaaf7e7"]
}, Open  ]],
Cell[2883, 69, 163, 3, 34, "Text",ExpressionUUID->"efac2de3-09b8-4860-b07a-129a8fab3591"],
Cell[CellGroupData[{
Cell[3071, 76, 992, 19, 28, "Input",ExpressionUUID->"62a67b0b-d18f-44ae-9b33-57e569a713df"],
Cell[4066, 97, 13459, 249, 71, "Output",ExpressionUUID->"20069e8b-6073-4c92-9729-eca0eb1240cb"]
}, Open  ]],
Cell[17540, 349, 299, 4, 34, "Text",ExpressionUUID->"c4e46aae-b9da-4740-b3d4-d971b591423b"],
Cell[17842, 355, 386, 9, 28, "Input",ExpressionUUID->"2528b890-bb03-44f5-822f-0a6a2986cec8"],
Cell[CellGroupData[{
Cell[18253, 368, 203, 3, 28, "Input",ExpressionUUID->"78100159-e9b1-4404-90f2-8fb12e01b90c"],
Cell[18459, 373, 896, 25, 113, "Output",ExpressionUUID->"3df5e1dd-3e4d-46db-bd36-ccd3d669d642"]
}, Open  ]],
Cell[19370, 401, 435, 10, 28, "Input",ExpressionUUID->"e07561d0-1e22-4048-92b2-a77d514ec0ea"],
Cell[CellGroupData[{
Cell[19830, 415, 203, 3, 28, "Input",ExpressionUUID->"c7b9a039-f29d-4905-9c5f-fc9e8eaa09a8"],
Cell[20036, 420, 954, 26, 113, "Output",ExpressionUUID->"4516116d-4e76-47d3-bdc0-08e3a1d93347"]
}, Open  ]],
Cell[CellGroupData[{
Cell[21027, 451, 518, 9, 28, "Input",ExpressionUUID->"2aee44e5-bd74-4776-b632-90871e9fb040"],
Cell[21548, 462, 1219, 30, 113, "Output",ExpressionUUID->"be8c98b7-6a17-4ae9-a527-ba05d5929801"]
}, Open  ]],
Cell[CellGroupData[{
Cell[22804, 497, 373, 6, 28, "Input",ExpressionUUID->"97d83d22-daf5-4312-adb5-f9a9f1ffe896"],
Cell[23180, 505, 975, 26, 113, "Output",ExpressionUUID->"c5ba7215-9a6f-4aa4-a346-84d4df6556b8"]
}, Open  ]],
Cell[24170, 534, 161, 3, 34, "Text",ExpressionUUID->"9cda0e66-61be-45ed-8c1b-259daf4f0b37"],
Cell[24334, 539, 221, 3, 28, "Input",ExpressionUUID->"fc74a0ea-5f7e-45a2-89cb-f9fbabe2f70f"]
}, Open  ]]
}
]
*)

